home *** CD-ROM | disk | FTP | other *** search
/ Practical Algorithms for Image Analysis / Practical Algorithms for Image Analysis.iso / LIBIP / SGL_STAT.H < prev    next >
C/C++ Source or Header  |  1999-09-11  |  2KB  |  54 lines

  1. /* 
  2.  * sgl_stat.h
  3.  * 
  4.  * Practical Algorithms for Image Analysis
  5.  * 
  6.  * Copyright (c) 1997, 1998, 1999 MLMSoftwareGroup, LLC
  7.  */
  8.  
  9. /*
  10.  * SGL_STAT.H
  11.  *
  12.  * structure defs for sgl_stat.c
  13.  */
  14.  
  15. #ifndef _SGL_STAT_H_
  16. #define    _SGL_STAT_H_
  17.  
  18. #include "ph.h"
  19.  
  20. #define    SIGN(a)        ( ((a) == 0.0) ? 0 : ( ((a) < 0.0) ? -1 : 1 ) )
  21.  
  22. #define MAX_REC_SIZE    1200       /* max number of segments */
  23. #define    MIN_SGL_SIZE    4          /* min size of SGL to be processed */
  24. #define    MIN_SGL_DISPL    5         /* min size of SGL to be displayed */
  25.  
  26. #define    ACCEPT_LEVEL    2          /* parameter controls acceptance of segm */
  27.     /* into segm group lists in sgll.c */
  28.  
  29. /* structure definitions */
  30. struct Segm {                   /* linear segment */
  31.   Sp ptO;                       /* coord. of initial point of seg. */
  32.   Sp ptF;                       /* coord. of final point of seg. */
  33.  
  34.   float slope;                  /* slope of segm {pt1, pt2} */
  35.  
  36.   int segm_ind;                 /* scan index (i) of segm under inspection */
  37.   int line_ind;                 /* index of parent line */
  38. };
  39.  
  40.  
  41. struct Segmtype {               /* linear segm, list entry */
  42.  
  43.   float pij;                    /* overlap of cur segm i wrt segm j */
  44.   float pji;                    /* inverse overlap */
  45.   float dij;                    /* perp dist from segm i to midpt of ov_ij */
  46.  
  47.   int segm_ind;                 /* scan index (i) of segm under inspection */
  48.  
  49.   int sgl_level;                /* level of indirection in SGL assignment (0,1,2) */
  50.   Boolean SalStat;              /* sgll(): when all segm in SAL<segm> InAct, InAct */
  51. };
  52.  
  53. #endif /* _SGL_STAT_H_ */
  54.